package com.aspose.cells;

class zbso {
   static String a(String var0) {
      StringBuilder var1 = new StringBuilder();
      boolean var2 = false;

      for(int var3 = 0; var3 < var0.length(); ++var3) {
         char var4 = var0.charAt(var3);
         if (Character.isLetter(var4)) {
            if (Character.isUpperCase(var4)) {
               if (var2) {
                  var1.append(Character.toLowerCase(var4));
               } else {
                  var1.append(var4);
               }
            } else if (Character.isLowerCase(var4)) {
               if (!var2) {
                  var1.append(Character.toUpperCase(var4));
               } else {
                  var1.append(var4);
               }
            } else {
               var1.append(var4);
            }

            var2 = true;
         } else {
            var1.append(var4);
            var2 = false;
         }
      }

      return com.aspose.cells.b.a.zr.a(var1);
   }

   static String b(String var0) {
      StringBuilder var1 = new StringBuilder(var0.length());
      char[] var2 = var0.toCharArray();

      for(int var3 = 0; var3 < var2.length; ++var3) {
         if (var2[var3] == ' ') {
            for(int var4 = var3++; var3 < var2.length; ++var3) {
               if (var2[var3] != ' ') {
                  if (var4 != 0) {
                     var1.append(' ');
                  }

                  var1.append(var2[var3]);
                  break;
               }
            }
         } else {
            var1.append(var2[var3]);
         }
      }

      return com.aspose.cells.b.a.zr.a(var1);
   }

   static int a(char var0) {
      return var0 > 127 ? 2 : 1;
   }

   static int c(String var0) {
      char[] var1 = var0.toCharArray();
      int var2 = 0;

      for(int var3 = 0; var3 < var1.length; ++var3) {
         var2 += a(var1[var3]);
      }

      return var2;
   }

   static Object a(String var0, int var1, int var2) {
      if (var1 >= 1 && var2 >= 0) {
         StringBuilder var3 = new StringBuilder(var2);
         char[] var4 = var0.toCharArray();
         int var5 = 0;
         --var1;

         for(int var6 = 0; var6 < var4.length; ++var6) {
            int var7 = a(var4[var6]);
            var5 += var7;
            if (var5 > var1) {
               if (var7 == 2) {
                  if (var5 - var1 == 1) {
                     var3.append(' ');
                     --var2;
                  } else {
                     if (var2 == 1) {
                        var3.append(' ');
                        return com.aspose.cells.b.a.zr.a(var3);
                     }

                     var3.append(var4[var6]);
                     var2 -= 2;
                  }
               } else {
                  var3.append(var4[var6]);
                  --var2;
               }

               if (var2 <= 0) {
                  return com.aspose.cells.b.a.zr.a(var3);
               }

               ++var6;

               while(var6 < var4.length) {
                  var7 = a(var4[var6]);
                  var2 -= var7;
                  if (var2 == 0) {
                     var3.append(var4[var6]);
                     return com.aspose.cells.b.a.zr.a(var3);
                  }

                  if (var2 < 0) {
                     var3.append(' ');
                     return com.aspose.cells.b.a.zr.a(var3);
                  }

                  var3.append(var4[var6]);
                  ++var6;
               }
            }
         }

         if (var3.length() == 0) {
            return zst.i;
         } else {
            return com.aspose.cells.b.a.zr.a(var3);
         }
      } else {
         return zst.i;
      }
   }

   static Object a(String var0, int var1) {
      Object var2 = a(var0, 1, var1);
      return var2;
   }

   static Object a(Object[][] var0, int var1, boolean var2, boolean var3) {
      Object[][] var4 = new Object[var0.length][];
      int var5;
      Object[] var6;
      int var7;
      if (var2) {
         for(var5 = 0; var5 < var0.length; ++var5) {
            var6 = var0[var5];
            if (var6 != null) {
               var4[var5] = new Object[var6.length];

               for(var7 = 0; var7 < var6.length; ++var7) {
                  if (var6[var7] == null) {
                     var4[var5][var7] = "";
                  } else if (var6[var7] instanceof zst) {
                     var4[var5][var7] = var6[var7];
                  } else if (var6[var7] instanceof Boolean) {
                     var4[var5][var7] = b((Boolean)var6[var7] ? "TRUE" : "FALSE", var1, var3);
                  } else {
                     var4[var5][var7] = b(com.aspose.cells.b.a.zr.a(var6[var7]), var1, var3);
                  }
               }
            }
         }
      } else {
         for(var5 = 0; var5 < var0.length; ++var5) {
            var6 = var0[var5];
            if (var6 != null) {
               var4[var5] = new Object[var6.length];

               for(var7 = 0; var7 < var6.length; ++var7) {
                  if (var6[var7] == null) {
                     var4[var5][var7] = "";
                  } else if (var6[var7] instanceof zst) {
                     var4[var5][var7] = var6[var7];
                  } else if (var6[var7] instanceof Boolean) {
                     var4[var5][var7] = a((Boolean)var6[var7] ? "TRUE" : "FALSE", var1, var3);
                  } else {
                     var4[var5][var7] = a(com.aspose.cells.b.a.zr.a(var6[var7]), var1, var3);
                  }
               }
            }
         }
      }

      return var4;
   }

   static Object a(String var0, int var1, boolean var2) {
      if (var2) {
         return a(var0, var1);
      } else if (var1 < 0) {
         return zst.i;
      } else {
         return var1 < var0.length() ? var0.substring(0, 0 + var1) : var0;
      }
   }

   static Object b(String var0, int var1, boolean var2) {
      if (var2) {
         return b(var0, var1);
      } else if (var1 < 0) {
         return zst.i;
      } else {
         return var1 < var0.length() ? var0.substring(var0.length() - var1, var0.length() - var1 + var1) : var0;
      }
   }

   static Object b(String var0, int var1) {
      int var2 = c(var0);
      return var2 - var1 < 0 ? a(var0, 1, var2) : a(var0, var2 - var1 + 1, var1);
   }

   static Object a(Object[][] var0, String var1, Object var2, boolean var3, WorkbookSettings var4) {
      Object[][] var5 = new Object[var0.length][];
      int var6 = var0[0].length;

      for(int var7 = 0; var7 < var0.length; ++var7) {
         Object[] var8 = var0[var7];
         if (var8 != null) {
            var5[var7] = new Object[var8.length];

            for(int var9 = 0; var9 < var6; ++var9) {
               Object var10 = var8[var9];
               if (var10 == null) {
                  var5[var7][var9] = 1;
               } else if (var10 instanceof zst) {
                  var5[var7][var9] = var10;
               } else {
                  var5[var7][var9] = a(com.aspose.cells.b.a.zr.a(var10).toUpperCase(), var1, var2, var3, var4);
               }
            }
         }
      }

      return var5;
   }

   static Object a(String var0, String var1, Object var2, boolean var3, WorkbookSettings var4) {
      if ("".equals(var0)) {
         return 1;
      } else if ("".equals(var1)) {
         return zst.i;
      } else {
         int var5 = 0;
         if (var2 != null) {
            var2 = zyn.e(var2, var4.getDate1904());
            if (var2 instanceof zst) {
               return var2;
            }

            var5 = (int)com.aspose.cells.a.c.zi.b(var2) - 1;
         }

         if (var3) {
            return a(var0, var1, var5 + 1);
         } else if (var5 >= 0 && var5 < var1.length()) {
            int var6 = -1;
            if (com.aspose.cells.b.a.zv.a(var0, new char[]{'?', '*'}) != -1) {
               var0 = com.aspose.cells.b.a.zv.a(var0, "?", ".?");
               var0 = com.aspose.cells.b.a.zv.a(var0, "*", ".*");
               if (var5 != 0) {
                  var1 = var1.substring(var5);
               }

               com.aspose.cells.b.a.g.a.zc var7 = com.aspose.cells.b.a.g.a.ze.a(var1, var0);
               if (var7.c()) {
                  var6 = var7.d();
               }
            } else {
               var6 = var1.indexOf(var0, var5);
            }

            if (var6 == -1) {
               return zst.i;
            } else {
               ++var6;
               return (double)var6;
            }
         } else {
            return zst.i;
         }
      }
   }

   static Object a(String var0, String var1, int var2) {
      String var3 = var0.toUpperCase();
      String var4 = var1.toUpperCase();
      int var5 = var4.length();
      int var6 = var3.length();
      if (var2 + var6 > var5) {
         return zst.i;
      } else if (var2 <= 0) {
         return zst.i;
      } else if (var6 == 0) {
         return (double)var2;
      } else {
         int[] var7 = new int[var6];
         --var6;
         int var8 = 0;
         int var9 = -1;
         var7[0] = -1;

         while(true) {
            while(var8 < var6) {
               if (var9 != -1 && var3.charAt(var9) != '?' && var3.charAt(var8) != var3.charAt(var9)) {
                  var9 = var7[var9];
               } else {
                  ++var8;
                  ++var9;
                  var7[var8] = var9;
               }
            }

            ++var6;
            var8 = var2 - 1;
            var9 = 0;

            while(var8 < var5 && var9 < var6) {
               if (var9 != -1 && var3.charAt(var9) != '?' && var4.charAt(var8) != var3.charAt(var9)) {
                  var9 = var7[var9];
               } else {
                  ++var8;
                  ++var9;
               }
            }

            boolean var10 = false;
            if (var9 >= var6) {
               int var12 = var8 - var6 + 1;
               int var11 = c(var1.substring(0, 0 + (var12 - 1))) + 1;
               return (double)var11;
            }

            return zst.i;
         }
      }
   }

   static Object a(String var0, String var1) {
      return b(var0, var1, 1);
   }

   static Object b(String var0, String var1, int var2) {
      int var3 = var1.length();
      int var4 = var0.length();
      if (var2 + var4 > var3) {
         return zst.i;
      } else if (var2 > 0 && var2 <= var3) {
         if (var4 == 0) {
            return (double)var2;
         } else {
            int[] var5 = new int[var4];
            --var4;
            int var6 = 0;
            int var7 = -1;
            var5[0] = -1;

            while(true) {
               while(var6 < var4) {
                  if (var7 != -1 && var0.charAt(var6) != var0.charAt(var7)) {
                     var7 = var5[var7];
                  } else {
                     ++var6;
                     ++var7;
                     var5[var6] = var7;
                  }
               }

               ++var4;
               var6 = var2 - 1;
               var7 = 0;

               while(var6 < var3 && var7 < var4) {
                  if (var7 != -1 && var1.charAt(var6) != var0.charAt(var7)) {
                     var7 = var5[var7];
                  } else {
                     ++var6;
                     ++var7;
                  }
               }

               boolean var8 = false;
               if (var7 >= var4) {
                  int var10 = var6 - var4 + 1;
                  int var9 = c(var1.substring(var2 - 1, var2 - 1 + (var10 - 1))) + 1;
                  return (double)var9;
               }

               return zst.i;
            }
         }
      } else {
         return zst.i;
      }
   }

   static Object a(String var0, int var1, int var2, String var3) {
      Object var4 = a(var0, var1, var2);
      if (!var4.equals(zst.i)) {
         String var5 = (String)var4;
         return com.aspose.cells.b.a.zv.a(var0, var5, var3);
      } else {
         return zst.i;
      }
   }
}
